package com.gw.service;

import com.gw.pojo.dto.UserForgetPasswordDTO;
import com.gw.pojo.dto.UserLoginDTO;
import com.gw.pojo.dto.UserRegisterDTO;
import com.gw.pojo.vo.UserLoginVO;
import org.springframework.stereotype.Component;

import java.util.concurrent.ConcurrentHashMap;

@Component
public interface UserService {
    /**
     * 用户登录
     * @param userLoginDTO
     * @return
     */
    UserLoginVO login(UserLoginDTO userLoginDTO);

    /**
     * 用户注册
     * @param userRegisterDTO
     * @return
     */
    UserLoginVO register(UserRegisterDTO userRegisterDTO);

    /**
     * 获取图形验证码
     * @return
     */
    ConcurrentHashMap<String, String> getCode();

    /**
     * 发送邮箱验证码
     * @param email
     */
    void sendCode(String email);

    /**
     * 忘记密码
     * @param userForgetPasswordDTO
     * @return
     */
    void forgetPassword(UserForgetPasswordDTO userForgetPasswordDTO);
}
